Pulse generators are used to generate pulse signals, which are generally characterized by a constant high level, a constant low level, and rapid transitions between the two levels. Typically, the placement in time of those transitions, also known as “edges”, is of great importance to users of pulse generators.
Analog pulse generators are a class of pulse generators that use analog integrators and comparators to place edges of the waveform, and that are capable of fine edge placement resolution. However, analog circuits are subject to component tolerances, non-linearity, and noise, may drift with time and temperature change, and thus their accuracy is generally limited. Also, uncorrelated noise may cause the analog pulse generator to switch earlier or later than intended, leading to unpredictable edge-placement errors known as jitter.
Digital pulse generators are another class of pulse generators, which use digital counters instead of analog circuits to determine pulse width and period of repetition, which can improve accuracy and jitter. However, a disadvantage of digital pulse generators is that, in general, edges of the generated pulse waveform occur coincidentally with clock edges, resulting in limited edge placement resolution.
Another class of pulse generators includes analog/digital hybrid pulse generators which combine digital counters with analog circuits to provide good edge placement resolution. The digital counters are used to determine pulse width and pulse repetition to within one clock period, and the analog circuits provide up to one clock period of finely controlled delay. However, the analog circuitry adds to the cost of the system, takes up a large amount of space, typically requires calibration, and is subject to drift.
What is needed, therefore, is a pulse generator that provides accurate, low jitter edge placement with improved resolution at low cost, that would not require calibration and would be of simple and cost effective design.